Ext.define("util.GridDoActionUtil",{
	commonUtil : Ext.create("util.commonUtil"),
	doDelete:function(grid){
		if(!grid){
			Ext.Msg.alert("提示","传入 参数错误");
			return;
		}
		var me = this;		
		//得到选中数据
		var data=grid.getSelectionModel().getSelection();
		if(data.length==0){
			Ext.Msg.alert("提示","你没有选中数据，不能执行操作！");
		}else{
			Ext.Msg.confirm('系统提示','确定要删除所选项目吗？',
		      function(btn){
		        if(btn=='yes'){
		            //得到数据集合
					var store=grid.getStore();
					var ids=[];
					Ext.Array.each(data,function(model){
						ids.push(model.get("id"));
					});
					Ext.Ajax.request({
						url:store.getProxy().api["remove"],  //实现低耦合，url不能写固定，因为这个是工具类，需要在store配置api
						params:{ids:ids.join(",")},
						method:"POST",
						timeout:4000,
						success:function(response,opts){
							var respText = Ext.JSON.decode(response.responseText);
							//弹出右下角提示框
							me.commonUtil.showToolTips(respText.msg);
							//刷新当前页面
							store.loadPage(1);
						},
						failure: function(resp,opts) {  
                             Ext.Msg.alert('错误', "错误信息为："+Ext.JSON.decode(response.responseText).msg);   
                        }
					});						
		        }
		      },this);
		}
	},
	doSaveOrUpdate:function(grid,submitbutton){
		var me = this;		
		var form = submitbutton.up('form').getForm(); // get the basic form
        var win = submitbutton.up('window');
        if(!grid||!form){
			Ext.Msg.alert("提示","传入 参数错误");
			return;
		}
        //得到数据集合
		var store=grid.getStore();
		
        if (form.isValid()) { // make sure the form contains valid data before submitting
        	var record = form.getRecord();
				if(record){
					form.submit({
                    	url : store.getProxy().api["update"],  //实现低耦合，url不能写固定，因为这个是工具类，需要在store配置api
                    	params: {
					        id: record.data.id
					    },
                    	waitTitle : '提示',
						method : 'POST',
						waitMsg : '正在处理数据,请稍候...',
                        success: function(form, action) {
                            record.beginEdit();
							record.set(form.getValues());
							record.endEdit();
							record.commit();//去掉表格修改的小箭头
							form.reset();//清空表单
							win.close();
							//弹出右下角提示框
							me.commonUtil.showToolTips("操作成功!");
                        },
                        failure: function(form, action) {
                            Ext.Msg.alert('提示', "更新操作失败: "+action.result.msg);
                        }
                    });
				}else{
                    form.submit({
                    	url : store.getProxy().api["create"],  //实现低耦合，url不能写固定，因为这个是工具类，需要在store配置api
                    	waitTitle : '提示',
						method : 'POST',
						waitMsg : '正在处理数据,请稍候...',
                        success: function(form, action) {
                           form.reset();//清空表单
                           win.close();
						   //弹出右下角提示框
						   me.commonUtil.showToolTips("操作成功!");
						   //刷新当前页面
                           store.loadPage(1);
                        },
                        failure: function(form, action) {
                            Ext.Msg.alert('提示', "新增操作失败 "+action.result.msg);
                        }
                    });
             }
        } else { // display error alert if the data is invalid
            Ext.Msg.alert('无效数据', '请录入正确的表单数据!')
        }
	}
});